package cn.stylefeng.guns.modular.business.neo4j.entity;


import cn.stylefeng.guns.modular.business.neo4j.relationship.ReNodeEvent;
import cn.stylefeng.guns.modular.business.neo4j.relationship.ReNodeFigure;
import cn.stylefeng.guns.modular.business.neo4j.relationship.ReNodeRiver;
import cn.stylefeng.guns.modular.business.neo4j.relationship.ReNodeTown;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.data.neo4j.core.schema.GeneratedValue;
import org.springframework.data.neo4j.core.schema.Id;
import org.springframework.data.neo4j.core.schema.Node;
import org.springframework.data.neo4j.core.schema.Relationship;


import java.util.ArrayList;
import java.util.List;

@Node
public class NODE {

    @Id
    @GeneratedValue
    private Long id;
//    @ApiModelProperty("名称ID")
    private String indexId;
//    @ApiModelProperty("简介")
    private String introduced;
//    @ApiModelProperty("名称")
    private String title;

    public NODE() {
    }

    public NODE(String indexId, String introduced,String title) {
        this.introduced = introduced;
        this.indexId = indexId;
        this.title = title;
    }
    @Relationship(type = "NODE_EVENT", direction = Relationship.Direction.OUTGOING)
    private List<ReNodeEvent> reNodeEventList = new ArrayList<>();

    @Relationship(type = "NODE_FIGURE", direction = Relationship.Direction.OUTGOING)
    private List<ReNodeFigure> reNodeFigureList = new ArrayList<>();

    @Relationship(type = "NODE_RIVER", direction = Relationship.Direction.OUTGOING)
    private List<ReNodeRiver> reNodeRiverList = new ArrayList<>();

    @Relationship(type = "NODETOWN", direction = Relationship.Direction.OUTGOING)
    private List<ReNodeTown> reNodeTownList = new ArrayList<>();

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getIndexId() {
        return indexId;
    }

    public void setIndexId(String indexId) {
        this.indexId = indexId;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public List<ReNodeEvent> getReNodeEventList() {
        return reNodeEventList;
    }

    public void setReNodeEventList(List<ReNodeEvent> reNodeEventList) {
        this.reNodeEventList = reNodeEventList;
    }

    public List<ReNodeFigure> getReNodeFigureList() {
        return reNodeFigureList;
    }

    public void setReNodeFigureList(List<ReNodeFigure> reNodeFigureList) {
        this.reNodeFigureList = reNodeFigureList;
    }

    public List<ReNodeRiver> getReNodeRiverList() {
        return reNodeRiverList;
    }

    public void setReNodeRiverList(List<ReNodeRiver> reNodeRiverList) {
        this.reNodeRiverList = reNodeRiverList;
    }

    public List<ReNodeTown> getReNodeTownList() {
        return reNodeTownList;
    }

    public void setReNodeTownList(List<ReNodeTown> reNodeTownList) {
        this.reNodeTownList = reNodeTownList;
    }

    public String getIntroduced() {
        return introduced;
    }

    public void setIntroduced(String introduced) {
        this.introduced = introduced;
    }
}
